Setting up a SNiFF+ project with CVS

In this section, we give step-by-step instructions how to set up a CVS repository with SNiFF+. Although these steps can be completed by any user, we strongly suggest that you appoint a CVS administrator for larger projects. Only the administrator should be allowed to change CVS configuration files or import new modules. Refer to the CVS Manual [4] for details on how to enforce access and security policies.
Most of the steps listed below will not need to be completed if you are If you already work with CVS outside of SNiFF+. Yet you should quickly read through this passage since it contains information on how to make SNiFF+ fit for using CVS efficiently.
Defining the Repository
Before starting SNiFF+, set the environment variable CVSROOT to the directory, which will become the repository root:
On Unix

setenv CVSROOT /your/absolute/path/to/repository/root
On Windows
set CVSROOT=:local:d:\your\absolute\path\to\repository\root
( :local: is needed for Windows to work with drive letters)
The CVSROOT variable specifies the location of your repository and will be used by all CVS commands.

| Note
| Windows UNC pathnames (like \\host\path ) are not supported with the current version. However, CVS Remote repositories can also be used with the CVS adapter. Please refer to Advanced topics for details.

Note that the SNiFF+ CVS Adapter does not depend on

CVSROOT being set, because it takes the information from the RWE; however, it is recommended to set CVSROOT in order to be able to work with CVS from outside SNiFF+ as well .

If you are setting up a new repository which doesn't have any files in it yet, you should now initialize it by executing the command

cvs init
from your command line.

| Note
| We assume that your CVS software is already installed and configured. In most cases it should suffice to set put the CVS executable in your path and set the CVSROOT environment variable. Please refer to the CVS Manual for detailed information on how to set up CVS.

You should now check if access to your repository works by entering the command

cvs co -p CVSROOT/modules
on your command line. This should print out the list of modules defined by CVS. Please refer to the CVS Manual for troubleshooting up to this point.
Setting up the Repository for SNiFF+
In order for the integration to work smoothly, SNiFF+ needs to know the CVSROOT and CVS needs to know about SNiFF+ temporary file types. To complete these settings:

Start SNiFF+.
In the Working Environments Tool, create a new RWE for your CVS Repository. Enter

$CVSROOT as the directory root for this repository. Verify that the CVSROOT environment variable is correctly expanded.
Below the CVSROOT RWE, Create a shared source that will hold a checked-out version of your CVS controlled projects.

| Note
| The CVS Repository must not be in the same physical directory branch as your other working environments. Having the CVS Repository directory on the same physical directory as your ImportWE, SSWE or PWE does NOT work! For your first-time experiments we propose you create a directory structure like Cvstest +- rwe +- sswe +- pwe +- ...

- Below the CVS SSWE, create SOWEs and PWEs as usual. Your working environments should now look more or less like this: